import { POST, GET, PACTH, DELETE } from '@/utils/request'

/** 避免 hooks 写法下的命名冲突 */
export class UserService {
  /** 分页查询用户列表 */
  static page(data: UserEntity.SearchParams) {
    return GET('/user/page', { params: data })
  }

  /** 新增用户 */
  static add(data: UserEntity.DataParams) {
    return POST('/user', data)
  }

  /** 获取用户详情 */
  static detail(id: string) {
    return GET('/user/' + id)
  }

  /** 更新用户 */
  static update(id: string, data: UserEntity.DataParams) {
    return PACTH('/user/' + id, data)
  }

  /** 强制修改用户密码 */
  static modifyPassword(id: string, data: UserEntity.ChangePasswordDto) {
    return PACTH('/user/modifyPwd/' + id, data)
  }

  /** 删除用户 */
  static remove(id: string) {
    return DELETE('/user/' + id)
  }

  /** 获取登录用户信息 */
  static getUserInfo() {
    return GET('/auth/userInfo')
  }
}
